From 79e1c66657957eea7f2b63a88c73c0bf09cd3a02 Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Fri, 24 Apr 2020 21:38:52 -0400 Subject: [PATCH] gsk: Don't autoinclude backend-specific headers Don't install headers for code that we don't build. And don't include those headers in gsk.h. Just as we do in gdk, require applications to include the backend-specific headers they need explicitly. Update the one affected demo, gtk4-node-editor. --- demos/node-editor/node-editor-window.c | 7 +++++++ gsk/gsk.h | 3 --- gsk/meson.build | 24 ++++++++++++++---------- 3 files changed, 21 insertions(+), 13 deletions(-) diff --git a/demos/node-editor/node-editor-window.c b/demos/node-editor/node-editor-window.c index b9b28afd81..7bda0679d4 100644 --- a/demos/node-editor/node-editor-window.c +++ b/demos/node-editor/node-editor-window.c @@ -24,6 +24,13 @@ #include "gtkrendererpaintableprivate.h" #include "gsk/gskrendernodeparserprivate.h" +#include "gsk/gl/gskglrenderer.h" +#ifdef GDK_WINDOWING_BROADWAY +#include "gsk/broadway/gskbroadwayrenderer.h" +#endif +#ifdef GDK_RENDERING_VULKAN +#include "gsk/vulkan/gskvulkanrenderer.h" +#endif #ifndef NODE_EDITOR_SOURCE_DIR #define NODE_EDITOR_SOURCE_DIR "." /* Fallback */ diff --git a/gsk/gsk.h b/gsk/gsk.h index b1ae837946..523b24c81a 100644 --- a/gsk/gsk.h +++ b/gsk/gsk.h @@ -27,9 +27,6 @@ #include #include -#include -#include -#include #include #include diff --git a/gsk/meson.build b/gsk/meson.build index 8aeae9e7e8..9cc22359cb 100644 --- a/gsk/meson.build +++ b/gsk/meson.build @@ -66,17 +66,21 @@ gsk_public_gl_headers = files([ install_headers(gsk_public_gl_headers, subdir: 'gtk-4.0/gsk/gl') gsk_public_headers += gsk_public_gl_headers -gsk_public_broadway_headers = files([ - 'broadway/gskbroadwayrenderer.h' -]) -install_headers(gsk_public_broadway_headers, subdir: 'gtk-4.0/gsk/broadway') -gsk_public_headers += gsk_public_broadway_headers +if get_variable('broadway_enabled') + gsk_public_broadway_headers = files([ + 'broadway/gskbroadwayrenderer.h' + ]) + install_headers(gsk_public_broadway_headers, subdir: 'gtk-4.0/gsk/broadway') + gsk_public_headers += gsk_public_broadway_headers +endif -gsk_public_vulkan_headers = files([ - 'vulkan/gskvulkanrenderer.h' -]) -install_headers(gsk_public_vulkan_headers, subdir: 'gtk-4.0/gsk/vulkan') -gsk_public_headers += gsk_public_vulkan_headers +if have_vulkan + gsk_public_vulkan_headers = files([ + 'vulkan/gskvulkanrenderer.h' + ]) + install_headers(gsk_public_vulkan_headers, subdir: 'gtk-4.0/gsk/vulkan') + gsk_public_headers += gsk_public_vulkan_headers +endif gsk_private_vulkan_shaders = [] # This is an odd split because we use configure_file() below to workaround -- 2.30.2